<?php
/**
 * CONTENIDO extension pack (mpContenidoX), consists of multiple classes to
 * provide more features for Plugins/Modules.
 *
 * @package     mpContenidoX
 * @subpackage  Array_Management
 * @author      Murat Purc <murat@purc.de>
 * @copyright   Copyright (c) 2008-2012 Murat Purc (http://www.purc.de)
 * @license     http://www.gnu.org/licenses/gpl-2.0.html - GNU General Public License, version 2
 * @version     $Id: Interface.class.php 21 2012-07-16 21:33:14Z purcaholic $
 */


defined('CON_FRAMEWORK') or die('Illegal call');


/**
 * Interface for array manager
 *
 * @package     mpContenidoX
 * @subpackage  Array_Management
 * @author      Murat Purc <murat@purc.de>
 */
interface mpArrayManager_Interface
{

    /**
     * Checks if an entry exists.
     *
     * @param   string  $path  The path (array structure) to the entry
     * @return  bool    True if exists, otherwhise false
     */
    public function exists($path);

    /**
     * Returns the value by passed path.
     *
     * @param   string  $path  Path (array structure) to the entry
     * @param   string  $default  Default value to return, if no entry exists.
     * @return  mixed   The value
     */
    public function get($path, $default=null);

    /**
     * Sets the value by passed path.
     *
     * @param   string  $path  Path (array structure) to the entry
     * @param   string  $value  New value to set.
     */
    public function set($path, $value);

}
